const cloudBase = require('./framework/cloud/cloud_base.js');

async function testDirectQuery() {
  try {
    console.log('开始直接查询测试...');
    
    // 获取云开发实例
    const cloud = cloudBase.getCloud();
    const db = cloud.database();
    
    // 集合名称
    const collectionName = 'plm_research_project';
    console.log(`尝试直接查询集合: ${collectionName}`);
    
    // 直接查询最新记录
    const result = await db.collection(collectionName)
      .orderBy('createTime', 'desc')
      .limit(1)
      .get();
    
    console.log('直接查询结果:', JSON.stringify(result));
    
    if (result && result.data && result.data.length > 0) {
      console.log('找到记录:');
      console.log('记录ID:', result.data[0]._id);
      console.log('字段数量:', Object.keys(result.data[0]).length);
      console.log('字段列表:', Object.keys(result.data[0]));
      console.log('记录内容:', JSON.stringify(result.data[0]));
    } else {
      console.log('未找到记录');
    }
    
    // 尝试通过ID直接查询
    if (result && result.data && result.data.length > 0 && result.data[0]._id) {
      const id = result.data[0]._id;
      console.log(`\n尝试通过ID直接查询: ${id}`);
      
      const docResult = await db.collection(collectionName).doc(id).get();
      console.log('按ID查询结果:', JSON.stringify(docResult));
      
      if (docResult && docResult.data && docResult.data.length > 0) {
        console.log('ID查询字段数量:', Object.keys(docResult.data[0]).length);
        console.log('ID查询字段列表:', Object.keys(docResult.data[0]));
      }
    }
    
    // 尝试列出所有记录
    console.log('\n尝试列出所有记录:');
    const allRecords = await db.collection(collectionName).limit(10).get();
    
    if (allRecords && allRecords.data && allRecords.data.length > 0) {
      console.log(`找到 ${allRecords.data.length} 条记录`);
      
      allRecords.data.forEach((record, index) => {
        console.log(`\n记录 #${index+1}:`);
        console.log('ID:', record._id);
        console.log('字段数量:', Object.keys(record).length);
        console.log('字段列表:', Object.keys(record));
        
        // 如果有model字段，显示model值
        if (record.model) {
          console.log('模型:', record.model);
        }
      });
    } else {
      console.log('未找到任何记录');
    }
    
  } catch (err) {
    console.error('查询出错:', err);
  }
}

// 执行测试
testDirectQuery(); 